// index.js
Page({
  data: {
    avatarUrl: '', // 存储头像临时路径
    nickName: '',   // 存储用户昵称
    weekTarget: 0   // 存储周学习目标
  },

  // 用户选择头像的回调
  onChooseAvatar(e) {
    const { avatarUrl } = e.detail
    this.setData({
      avatarUrl
    })
    console.log('用户选择了头像:', avatarUrl)
  },

  // 昵称输入框失去焦点的回调
  onBlurNickname(e) {
    this.setData({
      nickName: e.detail.value
    })
    console.log('用户输入了昵称:', e.detail.value)
  },
  
  // 周学习目标输入框失去焦点的回调
  onBlurWeekTarget(e) {
    this.setData({
      weekTarget: e.detail.value
    })
    console.log('用户输入了周学习目标:', e.detail.value)
  },

  // 提交用户信息到云函数
  async onSubmitUserInfo() {
    const { avatarUrl, nickName, weekTarget } = this.data

    if (!avatarUrl || !nickName) {
      wx.showToast({
        title: '请先选择头像和输入昵称',
        icon: 'none'
      })
      return
    }

    wx.showLoading({
      title: '提交中...',
    })

    try {
      // 调用云函数，将头像和昵称传递过去
      const result = await wx.cloud.callFunction({
        name: 'userFunctions', // 你的云函数名称
        data: {
          type: 'saveUserInfo',
          avatarUrl: avatarUrl,
          nickName: nickName,
          weekTarget: weekTarget
        }
      })

      wx.hideLoading()
      wx.showToast({
        title: '保存成功',
      })
      console.log('云函数返回结果:', result)
      const homePage = getCurrentPages()[0]
      if (homePage) {
        homePage.getUserInfo()
      }
      wx.navigateBack();

    } catch (error) {
      wx.hideLoading()
      wx.showToast({
        title: '保存失败',
        icon: 'error'
      })
      console.error('调用云函数失败:', error)
    }
  },

  // 版本兼容性检查（可选）
  onLoad() {
    this.checkVersionCompatibility()
  },

  onShow() {
    // 页面显示时，从首页获取用户信息
    this.getUserInfoFromHome();
  },
  // 从首页获取用户信息
  getUserInfoFromHome() {
    const homePage = getCurrentPages()[0]
    if (homePage) {
      this.setData({
        avatarUrl: homePage.data.userAvatar || '',
        nickName: homePage.data.username || '',
        weekTarget: homePage.data.weekTarget || ''
      })
    }
  },
  
  checkVersionCompatibility() {
    const version = wx.getSystemInfoSync().SDKVersion
    const isNewVersion = this.compareVersion(version, "2.21.2") >= 0
    
    if (!isNewVersion) {
      wx.showModal({
        title: '提示',
        content: '当前微信版本较低，部分功能可能无法使用，请升级到最新版微信',
        showCancel: false
      })
    }
  },
  
  // 版本比较工具函数
  compareVersion(v1, v2) {
    v1 = v1.split('.')
    v2 = v2.split('.')
    const len = Math.max(v1.length, v2.length)
    
    while (v1.length < len) v1.push('0')
    while (v2.length < len) v2.push('0')
    
    for (let i = 0; i < len; i++) {
      const num1 = parseInt(v1[i])
      const num2 = parseInt(v2[i])
      
      if (num1 > num2) return 1
      if (num1 < num2) return -1
    }
    return 0
  },
  // 返回上一页
  goBack: function() {
    wx.navigateBack();
  },
})